home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / cpp_libs / answrbok / 8_5.lha / 8_5 / tst.c < prev    next >
Text File  |  1993-08-08  |  3KB  |  124 lines

  1. * Copyright (c) 1990 by AT&T Bell Telephone Laboratories, Incorporated. */
  2. * The C++ Answer Book */
  3. * Tony Hansen */
  4. * All rights reserved. */
  5. include "nstdio.h"
  6. include <stdlib.h>
  7. nline unsigned long strtoul(const char *nptr, char **endptr, int base)
  8.  
  9.    return (unsigned long) strtol(nptr, endptr, base);
  10.  
  11. include "FILE.c"
  12. include "FILE2.c"
  13. include "FILE3.c"
  14. include "clearerr.c"
  15. include "doprint.c"
  16. include "doscan.c"
  17. include "fclose.c"
  18. include "feof.c"
  19. include "ferror.c"
  20. include "fflush.c"
  21. include "fgetc.c"
  22. include "fgets.c"
  23. include "fopen.c"
  24. include "fprintf.c"
  25. include "fputc.c"
  26. include "fputs.c"
  27. include "fread.c"
  28. include "freopen.c"
  29. include "fscanf.c"
  30. include "fwrite.c"
  31. include "getc.c"
  32. include "getchar.c"
  33. include "gets.c"
  34. include "printf.c"
  35. include "putc.c"
  36. include "putchar.c"
  37. include "puts.c"
  38. include "scanf.c"
  39. include "scanset1.c"
  40. include "setbuf.c"
  41. include "sprintf.c"
  42. include "sscanf.c"
  43. include "stdin.c"
  44. include "ungetc.c"
  45. include "vfprintf.c"
  46. include "vfscanf.c"
  47. include "vprintf.c"
  48. include "vscanf.c"
  49. include "vsprintf.c"
  50. include "vsscanf.c"
  51. include "~FILE.c"
  52.  
  53. ain()
  54.  
  55.    FILE *tp = fopen("/etc/termcap", "r");
  56.    if (!tp)
  57. {
  58. (void) fprintf (stderr, "cannot open /etc/termcap\n");
  59. exit(1);
  60. }
  61.    else
  62. (void) fprintf (stderr, "openned /etc/termcap\n");
  63.  
  64.    FILE *op = fopen("/tmp/foo.out", "w");
  65.    if (!op)
  66. {
  67. (void) fprintf (stderr, "cannot open /tmp/foo.out\n");
  68. exit(1);
  69. }
  70.    else
  71. (void) fprintf (stderr, "openned /tmp/foo.out\n");
  72.  
  73.    int c;
  74.    while ((c = getc(tp)) != EOF)
  75. putc(c, op);
  76.  
  77.    printf("feof(tp)==%d\n", feof(tp));
  78.    printf("ferror(tp)==%d\n", ferror(tp));
  79.    printf("feof(op)==%d\n", feof(op));
  80.    printf("ferror(op)==%d\n", ferror(op));
  81.  
  82.    fclose(op);
  83.    fclose(tp);
  84.    (void) fprintf (stderr, "all done\n");
  85.  
  86.    tp = fopen("/etc/termcap", "r");
  87.    if (!tp)
  88. {
  89. (void) fprintf (stderr, "cannot open /etc/termcap\n");
  90. exit(1);
  91. }
  92.    else
  93. (void) fprintf (stderr, "openned /etc/termcap\n");
  94.  
  95.    op = fopen("/tmp/foo2.out", "w");
  96.    if (!op)
  97. {
  98. (void) fprintf (stderr, "cannot open /tmp/foo2.out\n");
  99. exit(1);
  100. }
  101.    else
  102. (void) fprintf (stderr, "openned /tmp/foo2.out\n");
  103.  
  104.    char buf[BUFSIZ];
  105.    while (fgets(buf, sizeof buf, tp))
  106. fputs(buf, op);
  107.  
  108.    printf("feof(tp)==%d\n", feof(tp));
  109.    printf("ferror(tp)==%d\n", ferror(tp));
  110.    printf("feof(op)==%d\n", feof(op));
  111.    printf("ferror(op)==%d\n", ferror(op));
  112.  
  113.    fclose(op);
  114.    fclose(tp);
  115.    (void) fprintf (stderr, "all done\n");
  116.  
  117.    int x;
  118.    int ret = scanf("%d", &x);
  119.    (void) printf("scanf returns %d, x = %d\n", ret, x);
  120.    ret = scanf(" %5[a-d]xyz %d", buf, &x);
  121.    (void) printf("scanf returns %d, buf = '%s', x = %d\n", ret, buf, x);
  122.    return 0;
  123.  
  124.